﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using CarAppDomain.Base;
using SqlSugar;

namespace CarAppDomain.CarType.Entities
{
    /// <summary>
    /// 车辆类型版本表
    /// 包含品牌代码、车系代码、车型代码、车型版本代码、配置代码等信息。（2023年领克01 helo  ，2024 领克01 helo）
    /// 发动机信息表、变速箱信息表、
    /// </summary>
    [SugarTable("cartype_version", TableDescription = "车辆类型版本表")]
    public class CarTypeVersionEntity : BaseEntity
    {
        /// <summary>
        /// 车型版本代码
        /// </summary>
        [SugarColumn(ColumnDataType = "varchar", Length = 20, IsNullable = false, ColumnDescription = "车型版本代码")]
        public string? Code { get; set; }
        /// <summary>
        /// 所属品牌代码
        /// </summary>
        [SugarColumn(ColumnDataType = "varchar", Length = 36, IsNullable = false, ColumnDescription = "所属品牌代码")]
        public string? BrandId { get; set; }

        /// <summary>
        /// 所属车系代码（车系ID）
        /// </summary>
        [SugarColumn(ColumnDataType = "varchar", Length = 36, IsNullable = false, ColumnDescription = "所属车系代码")]
        public string? VehicleSeriesId { get; set; }

        /// <summary>
        /// 所属车型代码
        /// </summary>
        [SugarColumn(ColumnDataType = "varchar", Length = 36, IsNullable = false, ColumnDescription = "所属车型代码")]
        public string? CarTypeId { get; set; }

        /// <summary>
        /// 车型版本
        /// </summary>
        [SugarColumn(ColumnDataType = "varchar", Length = 20, IsNullable = false, ColumnDescription = "车型版本")]
        public string? Version { get; set; }

        /// <summary>
        /// 销售名称
        /// </summary>
        [SugarColumn(ColumnDataType = "varchar", Length = 128, IsNullable = false, ColumnDescription = "销售名称")]
        public string? SalesName { get; set; }


        /// <summary>
        /// 自定义字段1
        /// </summary>
        [SugarColumn(ColumnDataType = "varchar", Length = 254, IsNullable = true, ColumnDescription = "自定义字段1")]
        public string? CustomFields1 { get; set; }

        /// <summary>
        /// 自定义字段2
        /// </summary>
        [SugarColumn(ColumnDataType = "varchar", Length = 254, IsNullable = true, ColumnDescription = "自定义字段2")]
        public string? CustomFields2 { get; set; }

        /// <summary>
        /// 自定义字段3
        /// </summary>
        [SugarColumn(ColumnDataType = "varchar", Length = 254, IsNullable = true, ColumnDescription = "自定义字段3")]
        public string? CustomFields3 { get; set; }

        /// <summary>
        /// 自定义字段4
        /// </summary>
        [SugarColumn(ColumnDataType = "varchar", Length = 254, IsNullable = true, ColumnDescription = "自定义字段4")]
        public string? CustomFields4 { get; set; }

        /// <summary>
        /// 自定义字段5
        /// </summary>
        [SugarColumn(ColumnDataType = "varchar", Length = 254, IsNullable = true, ColumnDescription = "自定义字段5")]
        public string? CustomFields5 { get; set; }

        /// <summary>
        /// 自定义字段6
        /// </summary>
        [SugarColumn(ColumnDataType = "varchar", Length = 254, IsNullable = true, ColumnDescription = "自定义字段6")]
        public string? CustomFields6 { get; set; }

        /// <summary>
        /// 自定义字段7
        /// </summary>
        [SugarColumn(ColumnDataType = "varchar", Length = 254, IsNullable = true, ColumnDescription = "自定义字段7")]
        public string? CustomFields7 { get; set; }

        /// <summary>
        /// 自定义字段8
        /// </summary>
        [SugarColumn(ColumnDataType = "varchar", Length = 254, IsNullable = true, ColumnDescription = "自定义字段8")]
        public string? CustomFields8 { get; set; }

        /// <summary>
        /// 自定义字段9
        /// </summary>
        [SugarColumn(ColumnDataType = "varchar", Length = 254, IsNullable = true, ColumnDescription = "自定义字段9")]
        public string? CustomFields9 { get; set; }

        /// <summary>
        /// 自定义字段10
        /// </summary>
        [SugarColumn(ColumnDataType = "varchar", Length = 254, IsNullable = true, ColumnDescription = "自定义字段10")]
        public string? CustomFields10 { get; set; }

    }
}
